package main

import (
	"MyWork_/Dbutil"
	"MyWork_/User"
	"fmt"
)

//客户结构体
type customer struct {
	Name     string //用户名
	password string //密码
	status   bool   //登录状态
}

func main() {

	//初始化数据库
	err := Dbutil.InitDB() // 调用输出化数据库的函数

	if err != nil {
		fmt.Printf("init db failed,err:%v\n", err)
		return
	}

	//主goroutine
	for true {
		//菜单
		fmt.Println("----------菜单-----------")
		fmt.Println("       1.用户注册")
		fmt.Println("       2.用户登录")
		fmt.Printf("请输入（按回车键确定）：")
		selecter := 0
		fmt.Scanln(&selecter)
		if selecter == 1 { //1.用户注册
			fmt.Printf("用户名：")
			var name string
			fmt.Scanln(&name)
			pwd := ""
			fmt.Printf("密码：")
			fmt.Scanln(&pwd)
			//进行同名校验
			add := false
			if !Dbutil.SelectByName(name) {
				add = Dbutil.InsertUser(name, pwd, 0)
			}
			if add {
				fmt.Printf("注册成功")
				fmt.Scanln()
			} else {
				fmt.Printf("重名了，换个名字试试")
				fmt.Scanln()
			}

		} else if selecter == 2 { // 2.用户登录
			fmt.Printf("用户名：")
			var name string
			fmt.Scanln(&name)
			pwd := ""
			fmt.Printf("密码：")
			fmt.Scanln(&pwd)
			if Dbutil.UpdateStatus(name, pwd, 1) {
				fmt.Printf("登录成功！\n")
				User.User(name)
			}
			fmt.Scanln()

		} else {
			fmt.Printf("输入选项不正确，请重新输入┗( ▔, ▔ )┛，按回车键继续...")
			fmt.Scanln()
		}
	}
}
